package com.nanhai.buddhist.college.module.collegebase.dal.dataobject.departments;


import lombok.*;
import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import com.nanhai.buddhist.college.framework.mybatis.core.dataobject.BaseDO;

/**
 * 学校管理--系部 DO
 *
 * @author 开发
 */
@TableName("t_school_departments")
@KeySequence("t_school_departments_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DepartmentsDO extends BaseDO {

    /**
     * 系部id
     */
    @TableId(type = IdType.ASSIGN_UUID)
    private String id;
    /**
     * 编号
     */
    private String departmentNumber;
    /**
     * 系部名称
     */
    private String departmentName;
    /**
     * 系部code
     */
    private String code;
    /**
     * 所属学院
     */
    private String collegeId;
    /**
     * 负责人
     */
    private String userId;
    /**
     * 开办时间
     */
    private Date openingTime;
    /**
     * 机构编号
     */
    private Integer orgId;
    /**
     * 备注
     */
    private String remark;

    /**
     * 计数器用于代码生成
     */
    private Integer  departmentCounter;

    /**
     *
     * 系部介绍
     */
    private String departmentsIntroduce;

    /**
     *
     */
    private String englishName;


    // 分割线 上边是数据库字段 下边是联表字段

    /**
     * 学院昵称
     */
    @TableField(exist = false)
    private String collegeName;

    /**
     * 专业数量
     */
    @TableField(exist = false)
    private Long professionsCount;

    /**
     * 学生数量
     */
    @TableField(exist = false)
    private Long studentCount;
    /**
     * 教师数量
     */
    @TableField(exist = false)
    private Long teacherCount;


}
